#pragma once
#include "mkvmuxinpin.hpp"

namespace MkvMux
{

class InpinAudio : public Inpin
{
    InpinAudio(const InpinAudio&);
    InpinAudio& operator=(const InpinAudio&);
    
public:

    InpinAudio(Filter*);
    ~InpinAudio();
    
    HRESULT STDMETHODCALLTYPE QueryAccept(const AM_MEDIA_TYPE*);

    HRESULT STDMETHODCALLTYPE GetAllocatorRequirements( 
        ALLOCATOR_PROPERTIES*);

protected:

    HRESULT OnReceiveConnection(IPin*, const AM_MEDIA_TYPE&);
    HRESULT OnReceive(IMediaSample*);

};
    
}  //end namespace MkvMux
